let HtmlWebpackPlugin = require('html-webpack-plugin');
module.exports = {
  devtool: "eval-source-map", // 生成sourcemap
  entry: __dirname + '/app/main.js',
  output: {
    path: __dirname + '/build', // 打包后文件存放的地方
    filename: 'bundle.js'
  },
  devServer: {
    contentBase: './public', // 本地服务器所加载的页面所在的目录
    historyApiFallback: true, // 单页面应用路由切换时不跳转
    inline: true, // 实时刷新
    port: 8080,
    proxy: {
      '/api': { // 如果接口中带有API标志，那么就需要开始代理
        target: 'http://localhost:8001',
        changeOrigin: true,  // target是域名的话，需要这个参数，
        secure: false  // 设置支持https协议的代理，不检查安全与否
      }
    }
  },
  module: {
    rules: [
      {
        test: /(\.jsx|\.js)$/,
        use: {
          loader: "babel-loader",
          options: {
            presets: ['env', 'react'] // 预置
          }
        },
        exclude: /node_modules/
      },
      {
        test: /\.css$/,
        use: [
          {
            loader: 'style-loader'
          },
          {
            loader: 'css-loader'
          }
        ]
      },
      {
        test: /\.less$/,
        use: ['style-loader', 'css-loader', 'less-loader']
      },
      {
        test: /\.(png|jpg|gif)$/,
        use: {
          loader: 'url-loader'
        }
      }
    ]
  },
  plugins: [
    new HtmlWebpackPlugin({
      template: __dirname + '/public/index.html' // 指定一个模板，webpack将会按照这个模板创建html
    })
  ]
};